package com.xk.utils;



import java.util.List;
import java.util.stream.Collectors;

/**
 * 转化工具类
 */
public class SystemConverter {
    private SystemConverter(){}

    /**
     * 将传入 菜单实体List集合 转为 树的结构 ,的VOList集合<br>
     * @param menus 实体类List
     * @return VO类List(数据结构是树)
     */
/*    public static List<HoMenuVo> buildHoMenuVoTree(List<Menu> menus){
        //转为 HoMenuVo实体类
        List<HoMenuVo> hoMenuVoList = menus.stream()
                .map(menu -> new HoMenuVo(menu.getId(), menu.getMenuName(), menu.getParentId(), null))
                .collect(Collectors.toList());
        //转为树状结果
        List<HoMenuVo> hoMenuVos = hoMenuVoList.stream()
                .filter(ho -> UserConstants.MENU_PARENT_ID.equals(ho.getParentId()))
                .map(ho -> ho.setChildren(children(ho, hoMenuVoList)))
                .collect(Collectors.toList());
        return hoMenuVos;
    }*/
    //TODO 数据动好进行取消

    /**
     * 获取 子菜单元素 <br>
     * 根据传入的 父元素的id ,从集合当中查找出子元素集合
     * @param hoMenuVo 父菜单
     * @param menuVoList 菜单集合
     * @return 子元素集合
     */
  /*  public static List<HoMenuVo> children(HoMenuVo hoMenuVo,List<HoMenuVo> menuVoList){
        //过滤出子元素集合
         List<HoMenuVo> children = menuVoList.stream()
                .filter(ho -> hoMenuVo.getId().equals(ho.getParentId()))
                .map(ho -> ho.setChildren(children(ho, menuVoList)))
                .collect(Collectors.toList());
        return children;
    }*/
}
